package cn.icatw.yygh.hosp.service;

import cn.icatw.yygh.model.hosp.Hospital;
import cn.icatw.yygh.vo.hosp.HospitalQueryVo;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**医院service接口
 * @author 76218
 */
public interface HospitalService {
    /**
     * 上传医院接口
     * @param paramMap 前端医院
     */
    void save(Map<String, Object> paramMap);

    /**
     * 根据医院编号进行查询
     * @param hoscode 医院编号
     * @return 医院信息
     */
    Hospital getByHoscode(String hoscode);

    /**
     * 医院列表，分页条件查询
     * @param page 当前页
     * @param limit 当前页记录条数
     * @param hospitalQueryVo 封装条件
     * @return page对象
     */
    Page<Hospital> selectHospPage(Integer page, Integer limit, HospitalQueryVo hospitalQueryVo);

    /**
     * 更新医院上线状态
     * @param id 医院id
     * @param status 医院上线状态
     */
    void updateStatus(String id, Integer status);

    /**
     * 根据id获取医院详情信息
     * @param id 医院id
     * @return 医院详情信息
     */
    Map<String, Object> getHospById(String id);

    /**
     * 根据医院编号获取医院名字
     * @param hoscode 医院编号
     * @return 医院名
     */
    String getHospName(String hoscode);

    /**
     * 根据医院名字查询医院
     * @param hosname 医院名字
     * @return 医院信息列表
     */
    List<Hospital> findByHosName(String hosname);

    /**
     * 根据医院编号获取医院预约挂号详情
     * @param hoscode 医院编号
     * @return 预约挂号详情信息
     */
    Map<String, Object> item(String hoscode);
}
